package org.meteorshower.employee_depart.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import org.apache.ibatis.transaction.Transaction;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.support.TransactionTemplate;

import java.io.Serializable;
import java.util.Date;

/**
 * 人员调岗记录，映射完成
 * @table schedule
 * */
@Data
@Accessors(chain = true)
@AllArgsConstructor
@NoArgsConstructor
public class EmpSchedule implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 调岗记录ID
     * */
    private String id;
    /**
     * 调岗员工ID
     * */
    private String eId;
    /**
     * 调岗后部门
     * */
    private Department afterDept;
    /**
     * 调岗后职位等级
     * */
    private JobLevel afterJob;
    /**
     * 调岗后职位
     * */
    private Position afterPos;
    /**
     * 调岗时间
     * */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone ="GMT+8" )
    private Date moveDate;
    /**
     * 调岗理由
     * */
    private String reason;
    /**
     * 调岗说明
     * */
    private String remark;
    /**
     * 审批人
     * */
    private Employee verifier;
    /**
     * 当前部门
     * */
    private Department department;
    /**
     * 当前职位等级
     * */
    private JobLevel jobLevel;
    /**
     * 当前职位
     * */
    private Position position;
}
